package com.zmx;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.FilterType;
import org.springframework.security.oauth2.config.annotation.web.configuration.EnableAuthorizationServer;

@EnableAuthorizationServer
@EnableDiscoveryClient
@SpringBootApplication(scanBasePackages = "com.zmx")
@ComponentScan(excludeFilters = {
        @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.zmx.common.common.invocation\\..*"),
        @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.zmx.common.common.properties\\..*"),
        @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.zmx.common.common.security\\..*"),
        @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.zmx.common.common.utils\\..*"),
        @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.zmx.common.common.config.interceptor\\..*"),
        @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.zmx.common.common.config.MyWebMvcConfigurer"),
        @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.zmx.common.common.config.ElasticsearchConfig"),
        @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.zmx.common.common.config.MyBeanDefinitionRegistryPostProcessor"),
        @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.zmx.common.common.config.RedisSingleConfig"),
        @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.zmx.common.common.config.RedissonConfig"),
        @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.zmx.common.common.config.ZookeeperConfig"),
})
public class MallOauth2ServerApplication {

    public static void main(String[] args) {
        SpringApplication.run(MallOauth2ServerApplication.class, args);
    }

}
